Skip to content

Enable optional prescribed initial prestretch#1900

Open
tuchpaul wants to merge 1 commit into4C-multiphysics:mainfrom
tuchpaul:predefined-prestretch
Open

Enable optional prescribed initial prestretch#1900
tuchpaul wants to merge 1 commit into4C-multiphysics:mainfrom
tuchpaul:predefined-prestretch

Conversation

@tuchpaul
Copy link
Copy Markdown
Contributor

This PR introduces support for a predefined prestretch as the starting point for the IterativePrestress algorithm.
The predefined prestretch can be provided as an interpolated input field. To make this initial prestretch optional, the possibility to set default values for both the interpolated input field and the selection have been implemented.

The new test cases covers the new feature and represents the prestressing performed in paragraph 2.6 in
https://doi.org/10.1016/j.jmbbm.2023.105733.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds support for an optional, user-provided initial prestretch tensor as the starting point for the IterativePrestress strategy, with identity as a default when not specified.

Changes:

  • Add PRESTRETCH as an optional InterpolatedInputField<SymmetricTensor<...>> parameter for MIX_Prestress_Strategy_Iterative, defaulting to the identity tensor.
  • Extend Core::IO::InputSpecBuilders to support optional selections and default values for (interpolated) input fields.
  • Add value_type alias to generalized input fields to enable default-value plumbing in specs.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/mixture/src/4C_mixture_prestress_strategy_iterative.hpp Adds a stored initial prestretch input field parameter to the iterative prestress strategy parameters.
src/mixture/src/4C_mixture_prestress_strategy_iterative.cpp Uses the initial prestretch field as the starting value in evaluate_prestress().
src/global_legacy_module/4C_global_legacy_module_validmaterials.cpp Registers PRESTRETCH as an optional material input with identity default for the iterative prestress strategy.
src/core/io/src/4C_io_input_spec_builders.hpp Adds optional/required + defaulting support for selections and (interpolated) input fields.
src/core/io/src/4C_io_input_field.hpp Exposes value_type needed by spec builders’ default-value handling.

@tuchpaul tuchpaul marked this pull request as draft March 27, 2026 16:07
@tuchpaul tuchpaul force-pushed the predefined-prestretch branch from 39bb6f2 to e7f2bb0 Compare March 27, 2026 19:00
@tuchpaul tuchpaul marked this pull request as ready for review March 27, 2026 21:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants